package com.wx.day11;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;

/**
 *  1.启动类与其他类有什么区别
 *      @SpringBootConfiguration(傀儡) 真正的是configuration注解
 *      @EnableAutoConfiguration
 *      @ComponentScan
 *      启动类就是配置类有main方法且其实是唯一的主配置类
 *  2.springboot项目会不会创建ioc 什么时候创建
 *      会创建ioc 一定是项目启动就开始了(启动类调用main方法就创建了ioc容器)
 *  3.为什么我们自己的类放在springboot的启动包内或者子包就会自动生效
 *      @ComponentScan
 *  4.springboot是如何使用自动配置原理完成第三方组件自动加载和按需要导入
 *      在spring-boot-starter核心启动器中autoconfigure中142套
 *      @EnableAutoConfiguration里头有@Import 有ImportSelector接口的实现
 *
 *
 *
 */
@SpringBootApplication
public class BootRunner {
    public static void main(String[] args) {
        //创建ioc容器 启动内置的Tomcat
        ConfigurableApplicationContext run = SpringApplication.run(BootRunner.class, args);//参数1就是配置类
    }
}
